安天勒索防御系列报告:
☞ 勒索“达世币”的GandCrab勒索软件更新V2版本,安天智甲有效防护
☞ GandCrab勒索软件着眼“达世币”,安天智甲有效防护
☞ 警惕GlobeImposter勒索软件,安天智甲有效防护
1
2019年5月,安天CERT监测到了多起利用钓鱼邮件传播Sodinokibi勒索软件的事件。Sodinokibi最初由Twitter账号为Cyber Security(@GrujaRS)的独立安全研究员发现[1],而Sodinokibi这个名称是根据首次出现样本的版本信息中的文件名命名的。这种命名方式并不规范①,但由于Sodinokibi这个名称已经被广泛使用了,因此安天CERT也沿用这一名称。Sodinokibi从2019年4月26日开始出现,其传播方式主要为钓鱼邮件、RDP暴力破解和漏洞利用。
[注①:著名安全研究员Peter Szor著的《计算机病毒防范艺术》中曾明确“要避免按照传统上或习惯上用包含恶意软件文件名的名字进行命名”。]
安天CERT分析人员通过代码、C2、邮件、漏洞利用等关联分析认为该勒索软件团伙是一个不断套用、利用其他现有恶意工具作为攻击载体,传播勒索软件、挖矿木马、窃密程序,并在全球范围内实施普遍性、非针对性勒索、挖矿、窃密行为的具有一定规模的黑产组织。该组织和GandCrab组织有着千丝万缕的关系,分析人员猜测Sodinokibi和GandCrab运营成员有重合部分,在GandCrab组织宣布停止运营之后,部分GandCrab成员不愿收手,继续运营新修改的勒索软件Sodinokibi。
经验证,安天智甲终端防御系统(英文简称IEP,以下简称安天智甲)可实现对Sodinokibi的有效防御。
2
2019年5月,安天CERT监测到多起伪造“中华人民共和国公安部”发送钓鱼邮件传播Sodinokibi勒索软件的攻击事件。该钓鱼邮件伪造邮件主题为“警察議程”,邮件内容称用户必须在2019年5月23日下午3点向“警察局”报到,参与调查。邮件附件名为“關於你案件的文件.rar”。
图 2-1 黑产组织伪装公安部发送钓鱼邮件传播Sodinokibi勒索软件
黑产组织利用用户对邮件内容的恐惧和好奇心理,诱使用户下载附件并查看附件内容。附件解压后是两个伪装成doc文件的快捷方式,当用户查看伪造文件(实为快捷方式)时,便会运行快捷方式指向的勒索软件Sodinokibi,导致用户主机中文件被加密。勒索软件以隐藏的方式存储在该目录下,若用户的系统未设置成显示隐藏文件,则并不会发现勒索软件文件。另外,隐藏的文件为双扩展名,若用户系统设置为不显示扩展名,则不能发现该文件为EXE可执行文件。
图 2-2 伪装成doc文件的快捷方式可执行文件实际是勒索软件
图 2-3 被加密后的桌面
2019年6月初,安天CERT监测到多起通过伪造DHL邮件传播Sodinokibi勒索软件的钓鱼邮件攻击事件。DHL,即敦豪国际航空快递有限公司,是全球知名的邮递和物流集团Deutsche Post DHL旗下公司,业务遍布全球220个国家和地区。该钓鱼邮件主题为“您的包裹将无法按时交付”,邮件内容称因为受害者提供了不正确的海关申报数据,因此不能按时交付受害者的包裹,要求受害者点击邮件中的链接,下载海关文件查看并签署。
2019年5月,华为通过联邦快递(FedEx)发送的两份商业文件被拦截并送往美国孟菲斯的联邦快递公司。在业内人士对联邦快递发出质疑后,联邦快递在5月28日发布了道歉微博。5月22日,传出DHL停收华为货物的通知,5月23日,DHL否认停运华为货物[2]。在这个环境下,伪装成DHL的钓鱼邮件极有可能是在蹭该起事件的热点,利用该事件对大众造成的影响,诱导用户相信钓鱼邮件的真实性,从而增加用户点击链接的可能性。
图 2-4 伪造的DHL的钓鱼邮件
邮件正文中的链接是一个使用plip.io(短网址生成网站)生成的短网址,用户点击后会解析到另一个网址,之后会跳转到最终恶意网站下载勒索软件。邮件正文中虽提到存档中的密码为DHL,但该压缩包不需要输入密码“DHL”便可以解压。
图 2-5 点击邮件中链接后下载勒索文件
解压后的文件和伪造成“中华人民共和国公安部”的钓鱼邮件使用同样方式启动隐藏的可执行文件,如图所示,该快捷方式运行后指向一个隐藏的双扩展名的可执行文件,实际为Sodinokibi勒索软件。
图 2-6 压缩包中的快捷方式和勒索软件
安天CERT分析人员发现,2019年6月5日上午邮件正文中链接下载的文件为繁体文件名,其构造的快捷访问指向的文件和压缩包中的EXE文件名不相同,因此运行快捷方式并不能执行勒索软件。2019年6月5日下午,当分析人员再次分析邮件中链接时,发现已经替换了挂载的文件,新文件名为“customs declaration.pdf.exe”,快捷方式也被重新构造了。此次由于快捷方式中路径的问题,导致只有在Windows XP下运行快捷方式才可以启动勒索软件,而在Win 7和Win 10下并未启动成功。在分析人员测试的其他压缩包中,运行快捷方式均可以启动Sodinokibi勒索软件。从此次事件中可以看出,Sodinokibi运营者在不断完善其恶意代码。
3
Sodinokibi多数通过钓鱼邮件传播,通常会使用类似下述表格中所罗列的邮件主题和附件名称进行传播,还可以使用短网址进行跳转解析网址去下载勒索软件。
表 3-1 邮件传播的主题与附件名称示例
攻击者会使用扫描工具扫描3389端口,对开启了3389端口的主机进行RDP暴力破解,破解成功后传送勒索软件Sodinokibi到主机上。
攻击者利用Oracle WebLogic Server中的一个反序列化漏洞(CVE-2019-2725)传播Sodinokibi,该漏洞允许攻击者获得对服务器的完全访问权限,攻击者在获取权限后植入勒索软件并运行。此漏洞于2019年4月26日被Oracle修复。
该漏洞影响Oracle WebLogic Server 10.3.6.0和12.1.3.0版本,该漏洞的产生是由于负责处理WebLogic Server的异步通信的wls9_async_response.war包在特定条件下会产生逻辑错误,导致无法正确处理SOAP请求,从而使服务器容易受到反序列化漏洞的影响。攻击者构造恶意SOAP消息附加在HTTP请求中,即可以触发该漏洞,从而在WebLogic服务器中远程执行恶意代码。
4
表 4-1 Sodinokibi样本
Sodinokibi加密文件的后缀名是由数字和字母随机生成的,长度在5到10个字符之间。样本会使用后缀名来生成勒索信,其名称为[EXT]–readme.txt。在勒索信中,勒索者给用户提供了两种访问的网址来供用户选择。
图 4-1 勒索信
按照勒索信中的提示解密文件。该网站需要提交勒索信中的Key和加密后缀才可以访问。提交后进入到解密界面,勒索者向受害者勒索价值1300美元的比特币,若受害者不在7天内支付则赎金价格翻倍。为了向受害者展示其具有解密文件的能力,该页面还有一个试用解密功能,可以解密一个被加密的图片文件。该页面可以让受害者与攻击者“在线交流”。
图 4-2 倒计时和勒索金额
表 4-2 部分比特币地址
样本运行流程如下图所示。
图 4-3 Sodinokibi样本运行流程图
✪ 利用多种技术手段规避反病毒程序检测
该勒索软件通过加解密及字符串拼接的方式规避反病毒程序检测。其中,1、2、3是通过加解密进行规避,第4点是通过字符串拼接的方式进行规避。
1、样本运行后会分配内存,将PE文件解密到内存中,然后将其覆盖到源文件,再跳转到新的入口点,开始执行新的PE文件。
2、根据硬编码在样本中的数据,解密出函数地址,避免使用的函数在导入表中出现被反病毒引擎检测。
图 4-4 获取程序运行所需函数
3、使用RC4算法和Base64算法加密勒索信和操作中使用到的字符串信息。
使用RC4算法及密钥“FtY68agD4aS3aoCz9KEnmCKPnLpMpgtZ”解密出不加密名单、需要结束的进程名、域名、Base64编码的勒索信以及壁纸文字内容。
表 4-3 结束的进程名、数据回传域名和不加密的目录、后缀名、文件名
图 4-5 Base64编码的壁纸内容
样本硬编码了多个密钥,根据调用函数时设置的偏移获取不同的RC4密钥进行解密操作。互斥量及注册表等字符串都是使用了不同的RC4密钥进行解密获得的。
4、样本硬编码了1079个域名以及多个字符用于拼接URL,防止被反病毒程序通过URL或域名进行检测。分析人员抽样访问了几个域名,发现都是真实存在的网站,这些网站只是被Sodinokibi运营者入侵并用于接收受害者数据。
图 4-6 1079个域名
✪ 创建互斥量,确保只有一个实例运行
该互斥量是硬编码在样本中的,使用RC4算法解密后获得。并非所有的Sodinokibi样本都会创建该互斥量(可能只是某一批创建同一互斥量),还有其他样本创建了互斥量Global\D382D713-AA87-457D-DDD3-C3DDD8DFBC96。
图 4-7 创建互斥量
✪ 检测系统语言版本,对指定的语言系统不进行加密
样本会获取系统键盘布局句柄,判断当前系统键盘和输入法(GetKeyboardLayoutList),若为表4-4中语言,则退出程序,不进行加密操作。
图 4-8 判断当前系统语言版本
表 4-4 进行语言判断的switch表
✪ 删除卷影副本,禁用自动修复功能,防止用户恢复文件
样本在获取系统信息后,会删除卷影副本,使用BCDEdit禁用系统的自动修复功能,防止用户通过卷影副本恢复文件。
图 4-9删除卷影副本,禁用系统自动修复功能
✪ 使用Salsa20算法加密用户文件
1、样本生成pk_key、sk_key和0_key之后,创建注册表项HKLM\SOFTWARE\recfg,如图4-11所示,将这些值存储在注册表中。在创建注册表项之前,样本会先进行查询,确认这些注册表项是否存在,再决定是否进行数据生成。pk_key将会在Salsa20算法进行密钥生成时使用。
图 4-10 pk_key、sk_key和0_key生成方式
图 4-11 保存后缀名和密钥信息
2、样本会根据算法生成后缀名,后缀名由数字和字母组成,长度在5到10之间。后缀名同样会保存在如图4-11所示的注册表中。
图 4-12 后缀名生成
3、根据磁盘序列号、CPU信息以及CRC32算法生成UID,后4个字节为磁盘序列号、前4个字节为CRC32算法、CPU信息以及CPU信息长度计算后的结果。该UID用于拼接解密网址。
图 4-13 UID
4、拼接勒索信,将加密后缀名{EXT}、{UID}以及Base64编码的{KEY}替换成之前计算生成的数据。
5、每个文件夹下写入勒索信和a73a6b0b.lock文件。
6、遍历进程,根据硬编码的进程列表结束占用进程,防止由于文件占用而造成加密失败。
图 4-14 根据进程列表结束进程
7、使用IOCP(Input/Output Completion Port,I/O完成端口)模型和Salsa20算法加密文件。根据硬编码的数据,对指定后缀名文件、指定文件以及目录不进行加密。利用pk_key生成Salsa20密钥,利用图4-10所示的生成数据的第一种方式(*)生成8字节数据用来对密钥进行填充。每加密一个文件就生成一次Salsa20密钥。
图 4-15 Salsa20密钥生成
对文件内容加密完成后,样本会在文件末尾追加0xE0字节的数据,0x58的sk_key,0x58的0_key,0x16,0x8是通过图4-10中数据生成的第一种方式(*)生成的数据。其中0x8为Salsa20密钥的填充数据。0x4的CRC32(0x16字节数据)校验值,0x4的0字节。数据追加成功后,拼接具有新后缀的文件名,将“加密后的数据”和“要追加的数据”写入新文件中。
图 4-16 文件后追加的数据
图 4-17 加密数据并写入文件
✪ 替换操作系统的桌面壁纸
样本会绘制壁纸,并在临时文件夹中生成bmp格式的文件,设置注册表项HKCU\Control Panel\Desktop\Wallpaper,将bmp文件设置为壁纸。
图 4-18 替换的系统壁纸
图 4-19 替换系统壁纸
✪ 窃取用户系统信息回传至远程服务器
获取系统信息,获取顺序依次为用户名、主机名、工作组、语言、系统版本、磁盘信息、操作系统位数。通过HTTP协议将获取到的数据渗出到C2服务器。通过访问如下拼接的URL来传输数据。
表 4-5 URL拼接表
5
从伪装成DHL的钓鱼邮件中可以提取到表5-1所示的信息。
表 5-1 钓鱼邮件信息
通过安天威胁情报分析系统关联到webex.today域名。攻击者利用Powershell从该网站下载窃密木马家族KPOT Stealer。关联到的最新KPOT Stealer样本(MD5:70CE22275834C1E34E6EE52AC8E5DF31)会收集Cookie信息、浏览器登录凭证、进程信息、已安装软件信息、系统信息、屏幕截图以及受害者IP,并通过HTTP POST方式回传窃密信息。
KPOT Stealer是一种窃密恶意软件,主要从用户Web浏览器,即时消息,电子邮件,VPN,RDP,FTP,加密货币和游戏软件中窃取账户信息和其他数据。KPOT Stealer最早在2018年8月就出现在钓鱼邮件活动和漏洞利用工具包(Fallout和RIG)中了。
图 5-1 时间分析
webex.today域名被KPOT和Sodinokibi共同使用。KPOT接收信息的域名solar3080z.xyz创建时间为2019年4月27日,KPOT Stealer样本的时间戳为2019年5月16日,而webex.today域名的创建时间为2019年4月16日,可见该组织为了进行恶意活动而专门注册了新的域名,在近期同时进行勒索软件和窃密木马的传播。
综上所述,分析人员猜测Sodinokibi运营者购买了KPOT Stealer工具,同时传播窃密与勒索软件,通过窃密所得的数据来为勒索软件的传播作支撑。1079个域名、大量的收件人邮箱,Sodinokibi运营者掌握着多个数据资源,这些都表明了Sodinokibi背后是一个有规模的组织。
在安天CERT监测到的多起安全事件中,部分Sodinokibi样本从188.166.74.*下载。通过对188.166.74.*进行关联,发现GandCrabV5.2也曾经使用这个IP作为下载地址,详见表5-2。
表 5-2 188.166.74.218关联信息
其中一个Sodinokibi样本存在两个下载地址,188.166.74.*和45.55.211.*。通过45.55.211.*关联到了GandCrab V4家族的另一个样本和Linux系统下一些后门挖矿木马。
表 5-3 关联到的样本信息
通过对样本的IP进行拓线,分析人员发现用来下载Sodinokibi的IP地址从2018年开始传播GandCrab、Linux挖矿,2019年开始传播Linux后门、Sodinokibi勒索软件。
GandCrab运营者在2019年6月1日宣布停止更新GandCrab,声称正在关闭GandCrab RaaS[3],但是网络上还有其他的类GandCrab RaaS服务,如Jokeroo RaaS。 Jokeroo RaaS在早些时候伪造成GandCrab RaaS提供服务,不久之后就改名为Jokeroo RaaS。虽然Jokersoo声称自己是新的勒索软件,与GandCrab没有关系,但是其提供的勒索软件与GandCrab高度相似,甚至某一批勒索软件运行后生成的勒索信和壁纸依旧是GandCrabV5.3开头。Jokeroo RaaS是如何获取到GandCrab的暂不做追踪,但是从该RaaS存在的事情上可以发现,虽然GandCrab RaaS停止运营,但是以GandCrab为基底的变种依然会活跃在网络上。
本事件中的勒索软件使用的钓鱼邮件与2019年初GandCrab使用的钓鱼邮件内容相似,同时分析人员在对勒索软件Sodinokibi进行分析的过程中,发现其与GandCrab有多处相似。
◉代码相似
[注:表5-4中关于GandCrab和Sodinokibi的对比中,并非使用单一版本的GandCrab进行对比。]
表 5-4 GandCrab和Sodinokibi代码信息对比
◉ 手法一致
GandCrab和Sodinokibi在进行传播时都曾使用压缩包中包含快捷方式和exe文件的方式,如表5-5所示。这二者的快捷方式中都包含主机名win-0ev5o0is9i7,如表5-6所示,说明这二者的快捷方式是在同一台主机上生成的。
表 5-5勒索软件传播时压缩包中内容
◉ 同一机器产出,快捷方式生成时间分别为5月6日和6月5日
表 5-6 GandCrab和Sodinokibi快捷方式对比
从对大量Sodinokibi的钓鱼邮件分析来看,邮件内容针对不同的国家使用不同的语言,而且使用了多种邮件主题,利用大量垃圾邮件、社工方式来大范围撒网。其发件人邮箱大部分为*@gmx.com(全球著名免费邮箱网站),有的邮箱是真实存在的,有的则是伪造的。从收件人邮箱以及其他国家发生的类似事件来看,Sodinokibi并未针对某一地区或公司亦或是某一领域,它所操作的,是以获利为目的的大规模的勒索行动。
图 5-2 部分收件人邮箱
图 5-3 构造的多种钓鱼邮件
图 5-4 整体关联图
2019年4月30日,思科Talos情报小组披露了通过WebLogic Server漏洞传播的Sodinokibi勒索软件,并提到攻击者在部署Sodinokibi的同时也会部署GandCrab V5.2[4]。分析人员对该报告中提到的样本的时间戳以及2019年5月份通过钓鱼邮件传播的部分Sodinokibi样本的时间戳进行对比,发现这些样本的时间戳大都在2018年期间。这说明这场勒索活动至少在2018年就开始策划了。
表 5-7 不同事件中Sodinokibi样本事件戳
通过对网络IoC部分进行关联,发现该组织不断使用开源程序、购买出售程序(KPOT窃密木马、Linux挖矿、Linux后门),不断套用、复用其他现有工具、开源程序作为攻击载体进行牟利。通过和GandCrab的代码、手法、IP等进行对比分析发现Sodinokibi和GandCrab有着千丝万缕的联系,通过大范围撒网的钓鱼邮件来看,该组织在全球范围实施勒索行为,不具备针对性攻击操作。
从本文5.2小节中可知,188.166.74.*下挂载Sodinokibi和GandCrab V5.2,45.55.211.*下挂载GandCrab V4、Sodinokibi、Linux后门和挖矿木马,这些样本的编译时间从2018年到2019年都有。思科Talos情报小组在《Sodinokibi ransomware exploits WebLogic Server vulnerability》也提到了攻击者在部署Sodinokibi的同时也部署了GandCrab V5.2[4]。
通过GandCrab团队的声明,可以得知即使受害者购买了密钥,被加密的数据也无法恢复,因此排除Sodinokibi可能是GandCrab服务购买者的限时变现操作。
综上所述,猜测Sodinokibi和GandCrab运营成员有重合部分,部分GandCrab成员不愿收手,继续运营新修改的勒索软件Sodinokibi。
图 5-5 GandCrab团队的声明(英文版)
6
从针对Sodinokibi勒索软件的整体分析关联来看,该勒索组织具有一定规模,且组内成员分工明确,从投放载体到勒索收益形成一条完整的黑色产业链。从大量样本的时间戳来看,这场勒索行动至少在2018年就开始策划了。该组织不仅投放勒索软件、而且还夹带着窃密木马、挖矿木马,即包含勒索、窃取、挖矿等多种恶意行为。Sodinokibi并未针对某一地区或公司亦或是某一领域,它所操作的,是以获利为目的的大规模的勒索行动。Sodinokibi组织和GandCrab组织有着密切的关联,分析人员推测Sodinokibi的运营团队可能包含GandCrab组织的部分成员,现版本的Sodinokibi更像是GandCrab的新变种,Sodinokibi的运营团队更像是GandCrab组织的接班人。
大部分勒索软件仍然是使用钓鱼邮件和相应漏洞进行传播。因此,安天CERT建议用户打好相应漏洞补丁,不要随意打开邮件附件,并使用防护软件如安天智甲进行有效防护。
7
安天智甲终端防御系统(英文简称IEP,中文简称安天智甲)通过诱饵文件、行为分析、文件变化审计、进程身份识别等多种能力的结合,可实现对主流勒索软件的有效防护。经验证,安天智甲可实现对Sodinokibi的有效防护。
图 7-1 安天智甲有效防护Sodinokibi勒索软件
安天智甲是一款面向政府、军工、能源、金融、交通、电信等各行业用户的企业级终端防御产品,支持各种体系结构和操作系统平台,对桌面、工作站、服务器、移动终端、虚拟化等端点场景提供安全防护。为客户提供病毒与恶意代码查杀、威胁主动防御、补丁修复、配置加固等防护功能。对浏览器、电子邮件等入口进行交互防御,对Office等软件遭遇的格式漏洞攻击进行特别保护,对USB等介质攻击进行保护。具有精准检测防御海量已知威胁的能力和较强未知威胁发现和主动防御的能力,可有效收缩终端受攻击面,有效支撑安天资产运维平台和战术型态势感知的数据采集和响应行动。
安天智甲终端防御系统的能力与价值
安天智甲终端防御系统支持各种体系结构和操作系统平台,对桌面、工作站、服务器、移动终端、虚拟化等端点场景提供安全防护。为客户提供病毒与恶意代码查杀、威胁主动防御、补丁修复、配置加固等防护功能。对浏览器、电子邮件等入口进行交互防御,对Office等软件遭遇的格式漏洞攻击进行特别保护,对USB等介质攻击进行保护。具有精准检测防御海量已知威胁的能力和较强未知威胁发现和主动防御的能力,可有效收缩终端受攻击面,有效支撑安天资产运维平台和战术型态势感知的数据采集和响应行动。
智甲采用可信计算与安天下一代反病毒引擎组合构建的黑白双控模式,对引导链和执行对象的行为活动和网络通讯进行检测过滤,针对各种服务器、重要工作站、SCADA站、ATM等场景具有专用的防御策略模板。
安天智甲全面支撑各种国产CPU和操作系统组合的主机环境防护,参与了专用机病毒防治标准规范的研讨,并率先研发出符合专用机病毒防护要求的产品——安天智甲专用机版,其在国产CPU和国产操作系统的基础架构之上,深度契合专用机的系统特性,从行为、边界、网络等多个层面为涉密专用机提供了全面的安全防护能力。在国产化领域,安天智甲深度结合国产化系统特点,全面覆盖国产化系统平台。
附录:IoCs
附录:参考资料
[1]Cyber Security@GrujaRs
https://twitter.com/grujars/status/1122031871033057280?lang=en
[2]如何看待网传联邦快递私自转运华为邮件,华为将审查与联邦快递合作关系一事?
https://www.zhihu.com/question/325807372
[3]GandCrab勒索病毒停止更新:运营商称赚够了退休的钱
https://www.freebuf.com/column/205082.html
[4]Sodinokibi ransomware exploits WebLogic Server vulnerability
https://blog.talosintelligence.com/2019/04/sodinokibi-ransomware-exploits-weblogic.html
注:本分析报告由安天安全研究与应急处理中心(安天CERT)发布,欢迎无损转发。本分析报告错漏缺点在所难免,敬请业内专家和研究者回帖指点批评指正。
安天勒索防御系列报告:
☞ 勒索“达世币”的GandCrab勒索软件更新V2版本,安天智甲有效防护
☞ GandCrab勒索软件着眼“达世币”,安天智甲有效防护
☞ 警惕GlobeImposter勒索软件,安天智甲有效防护